package com.guigu.gulicommon.entity.vo.es;


import com.alibaba.fastjson.annotation.JSONField;
import com.guigu.gulicommon.constant.enumes.ware.HasStock;
import com.guigu.gulicommon.entity.pojo.AttrsPoJo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.List;

/**
 * 单款商品信息ES模型
 *
 * @author 陈俊杰
 * @version 1.0
 * @since 2024/8/24 16:55
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
public class SkuEsModel {
    /**
     * 单款商品id
     */
    private Long skuId;
    /**
     * 商品spuId
     */
    private Long spuId;
    /**
     * 单款商品名称
     */
    private String skuTitle;
    /**
     * 单款商品价格
     */
    private BigDecimal skuPrice;
    /**
     * 单款商品图片
     */
    private String skuImg;
    /**
     * 销量
     */
    private Long saleCount;
    /**
     * 是否有库存
     *
     * @see HasStock#getName()
     */
    private HasStock hasStock;
    /**
     * 热度评分
     */
    private Long hotScore;
    /**
     * 商品所属品牌id
     */
    private Long brandId;
    /**
     * 商品所属分类id
     */
    private Long catalogId;

    @JSONField(serialize = false)
    private String brandName;
    /**
     * 品牌图片地址
     */
    @JSONField(serialize = false)
    private String brandImg;
    /**
     * 分类名称
     */
    @JSONField(serialize = false)
    private String catalogName;
    /**
     * 规格参数信息
     */
    private List<AttrsPoJo> attrs;


}
